package middle.ground.core.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Table注解，应用于实体类上，用于表明实体类对应的表名
 *
 * @author jrl
 * @author jrl
 * @date 2020-12-01
 */
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
@Documented
public @interface Table {

	/**
	 * 表名
	 *
	 * @return
	 */
	String table();

	/**
	 * 主键字段名称
	 *
	 * @return
	 */
	String idField();

	/**
	 * 主键字段对应的表字段名称
	 *
	 * @return
	 */
	String idColumn();

	/**
	 * 主键的自增序列
	 *
	 * @return
	 */
	String sequence() default "";
}
